1. Field of the Invention
The present invention relates to a information processing apparatus that includes a non-volatile main memory unit and a data recovering method.
2. Description of the Related Art
Recently, development of a technology related to non-volatile memories such as a flash memory, a magneto-resistive random access memory (MRAM), a ferroelectric random access memory (FeRAM), and a phase change random access memory (PRAM) is in progress. In the non-volatile memory, recorded data cannot be lost even if a power outage occurs. It is anticipated that in the future, the non-volatile memory will be a substitute for a volatile memory such as a dynamic random access memory (DRAM) that is presently widely used as a main memory in computers.
If such a non-volatile memory is used as the main memory in the computers, data saved in the main memory or a status of a system will not be lost even if the power outage occurs in the main memory during processing of computer programs. The data stored in the main memory or the status of the system will be retained in the main memory. Due to this, when power is restored, computer operations can be easily restarted from a status at the time of the power outage, thus shortening activation time of the computers and enhancing operability. In the non-volatile memory, which differs from the volatile memory, a power supply device is not required for maintaining stored contents. Thus, reduction in power consumption of the entire computer, miniaturization of a battery, and longevity of the battery can be anticipated.
In an existing technology disclosed in JP-A 2005-107573 (KOKAI), when power is restored after sudden power outage in the computer that uses such non-volatile memory, interruption is notified to a central processing unit (CPU) by using a power monitoring mechanism for maintaining and restoring the status at the time of the power outage. The status of the CPU is saved in the main memory unit by using control software that is similar to an operating system.
However, in the technology described in JP-A 2005-107573 (KOKAI), a battery such as a separate capacitor is needed at the time of sudden power outage, for concluding a writing process that is being performed and stabilizing the contents in the non-volatile memory (hereinafter, called “non-volatile main memory unit”) that is used as the main memory unit. Generally, the battery used in the computer for concluding the writing process is a secondary battery. Thus, insufficient power is likely to be supplied if the power outage occurs frequently.
In the technology described in JP-A 2005-107573 (KOKAI), the existing technology mentioned earlier, a process log is obtained for returning the computer status, including contents of the non-volatile main memory unit, to a specific status prior to the power outage. If a power supply including the battery is disrupted while writing a log data to a log area, the log data is likely to be written in an incomplete manner to the log area. Due to this, even if the contents of the non-volatile main memory unit are recovered from the log that is left in the log area at the time of restoring power, because the data is written in the incomplete manner, the log data that is required for recovery cannot be specified. Thus, a failure occurs in the data recovery, any prior status cannot be recovered, and the process cannot be continued.